package top.malaoshi.webmvc.exception;

import java.lang.reflect.Method;

/**
 * Bean 名字相同的异常
 */
public class SameNameBeanException extends RuntimeException{

    public SameNameBeanException(String name,Class<?> clazz) {
        super("bean的名字 ["+name+"] 已经存在，错误在 ["+clazz+"]");
    }

    public SameNameBeanException(String name, Class<?> clazz, Method method) {
        super(String.format("bean的名字 [ %s ] 已经存在，错误在 [ %s . %s()]", name,clazz.getName(),method.getName()));
    }

    public SameNameBeanException(String name, String className1, String methodName1, String className2, String methodName2) {
        super(String.format("bean的名字 [ %s ] 已经存在，错误在 [ %s . %s()] 和 [ %s . %s()]",
                name,className1,methodName1,className2,methodName2
        ));
    }
    public SameNameBeanException(String name, String className1, String methodName1, String className2) {
        super(String.format("bean的名字 [ %s ] 已经存在，错误在 [ %s . %s()] 和 [ %s ]",
                name,className1,methodName1,className2
        ));
    }
}
